package com.bmob.lover.viewmodel.request

import com.bmob.lover.app.ext.getExposeJson
import com.bmob.lover.app.ext.pointer
import com.bmob.lover.data.model.bean.BmobDate
import com.bmob.lover.data.model.bean.Cost
import com.bmob.lover.data.model.bean.CostCategory
import com.bmob.lover.viewmodel.base.BaseBmobActionViewModel

//  ┏┓　　　┏┓
//┏┛┻━━━┛┻┓
//┃　　　　　　　┃
//┃　　　━　　　┃
//┃　┳┛　┗┳　┃
//┃　　　　　　　┃
//┃　　　┻　　　┃
//┃　　　　　　　┃
//┗━┓　　　┏━┛
//    ┃　　　┃                  神兽保佑
//    ┃　　　┃                  永无BUG！
//    ┃　　　┗━━━┓
//    ┃　　　　　　　┣┓
//    ┃　　　　　　　┏┛
//    ┗┓┓┏━┳┓┏┛
//      ┃┫┫　┃┫┫
//      ┗┻┛　┗┻┛
/**
 * @author The one
 * @date 2021-05-19 15:20
 * @describe TODO
 * @email 625805189@qq.com
 * @remark
 */
class CostSaveRequestViewModel : BaseBmobActionViewModel<Cost>() {

    fun save(type: Int, money: Double, category: CostCategory, date: BmobDate, remark: String) {
        val cost = Cost(type, money, category, date, remark).apply {
            setLoverPointer()
        }
        cost.save("保存中", false)
    }

    fun update(cost: Cost) {
        val json = cost.getExposeJson()
        cost.update(json, "更新中")
    }

    fun delete(cost:Cost){
        cost.delete("删除中")
    }

}